package com.qnbc.mystery.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.qnbc.mystery.core.annotation.Excel;
import com.qnbc.mystery.core.domain.BaseEntity;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 奖盒关联商品对象 box_product
 *
 * @author guzj
 * @date 2024-01-30
 */
@Data
@Setter
@Getter
public class BoxProduct implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 编号
     */
    @TableId(type = IdType.AUTO)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /**
     * 盒子id
     */
    @Excel(name = "盒子id")
    private Long boxId;

    /**
     * 商品id
     */
    @Excel(name = "商品id")
    private Long proId;

    /**
     * 商品name
     */
    @Excel(name = "商品Name")
    @TableField(exist = false)
    private String proName;


    /**
     * 商品数量
     */
    @Excel(name = "商品数量")
    private int proNum;


    /**
     * 创建人
     */
    @Excel(name = "创建人")
    private String createdBy;

    /**
     * 更新人
     */
    @Excel(name = "更新人")
    private String updatedBy;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedTime;

    /**
     * 创建日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdTime;

    private String message;

    /**
     * 商品类型  1 一番赏(abcdef) 2 魔力赏(欧皇)
     */
    private String proType;

}
